;(function(){
    // onorientationchange
    var supportevent = "onorientationchange" in window?"orientationchange":"resize";

     function debounce(fn , event , delay){//fn 需要执行的函数 ， delay 延迟防抖控制的时间
        var delay = delay || 300;//默认参数
        // console.log(fn,delay);
        var timer = null;
        return function(e){//必须返回一个函数 ， e 事件对象
          var _this = this;
            timer && clearTimeout(timer); //如果有设置timer ， 就清除掉
            timer = setTimeout(function(){
              fn.call(_this ,e);//给事件处理函数内部绑定当前触发事件的元素 this = > 当前触发事件的元素
            } , delay);
        }; 
      }
     //定义一个方法用于设置rem大小
     function setRem (){
        // console.log('正在计算大小...');
        var clientW = document.documentElement.offsetWidth; // 获取当前视口的宽度
          clientW = clientW>=640?640:clientW;//设置屏幕的宽度上限为640
        var fontSize = clientW / 375 * 100;
        // console.log('在当前屏幕下应当设置html字体大小为:',fontSize);
        document.documentElement.style.fontSize = fontSize + 'px';
    }

    //绑定一个监听窗口缩放事件
    window.addEventListener(supportevent , debounce(setRem));

    //首次初始化执行
    window.onload = setRem;
})()